/**
 * 匠言知识付费v2.0.0
 * Author: 山西匠言网络科技有限公司
 * 这不是一个免费软件，它受限于许可条款，你可以访问https://www.zsfzxkc.cn/获取更多详细信息。
 * This is not a free software, it under the license terms, you can visit https://www.zsffzxkc.cn/ get more details.
 */
<template>
	<view class="container">
		<view class="beijing">
			<image src="../static/upload-banner.png" mode="aspectFill"></image>
		</view>
		<form @submit="submit" :model="applyForm">
			<view class="setliveparam"><text style="color: red;">*</text>选择目录</view>
			<xfl-select 
				:list="treeData"
				:clearable="false"
				:showItemNum="5" 
				:style_Container="'height: 50px; font-size: 16px;'"
				:placeholder = "'请点击右侧倒三角选择'"
				:selectHideType="'hideAll'"
				@change='selected_menu'
				v-model="applyForm.menuid"
			>
			</xfl-select>
			<view class="setliveparam"><text style="color: red;">*</text>课时名称</view>
			<input class="name" v-model="applyForm.coursename" type="text" placeholder="请输入课时名称" />
			<view class="setliveparam">单课时价格</view>
			<input class="name" v-model="applyForm.price" type="number" placeholder="请输入单课时价格" />
			<view class="setliveparam">是否支持试看</view>
			<view >
				<input type="text" v-model="applyForm.is_sk" class="name" style="display: none;"/>
				<radio-group @change="radioChange" class="radio_check">
					<label  v-for="(item, index) in items" :key="item.value">
						<view>
							<radio :value="item.value" :checked="index === current" />{{item.name}}
						</view>
					</label>
				</radio-group>
			</view>
			<view class="setliveparam" v-if="is_sk">试看时长</view>
			<input class="name" v-if="is_sk" v-model="applyForm.freesecond" type="number" placeholder="请输入试看时长(单位秒)" />
			<input type="text" v-model="applyForm.src" class="name" style="display: none;"/>
			<view class="setliveparam">上传视频<text style="color: #DD524D;">{{uploadtext}}</text></view>
			<view class="file">
				<image @click="upLoadVideo" :src="'../static/video-upload.png'" mode="aspectFit"></image>
				<view>请上传180M以下大小的mp4格式的视频文件</view>
				<view v-if="applyForm.src" style="color: #DD524D;width: 100%;white-space:normal;word-break:break-all;word-wrap:break-word;">视频链接:{{applyForm.src}}</view>
			</view>
			<view class="submit">
				<button form-type="submit">提交</button>
			</view>
		</form>
		<mx-date-picker :show="showPicker" :type="type" :value="value" :show-tips="true" :show-seconds="true" @confirm="ed" @cancel="ed" />
		
	</view>
</template>

<script>
	import wPicker from "@/components/w-picker/w-picker.vue";
	import MxDatePicker from "../mx-datepicker/mx-datepicker.vue";
	import { postTeacherJsreg, postSendCode } from '@/request/tutor'
	import {checkUserinfo} from '@/request/checkUserinfo'
	export default {
		 components: {
		            MxDatePicker,
					wPicker
		        },
		data() {
			return {
				HOST_URL:uni.HOST_URL,
				userinfo: {},
				is_sh: 0,
				loadImage:'',
				flag:false,
				timetext:'获取验证码',
				tinfo:[],
				applyForm: {
					media:'',
					coursename: '',
					introduce: '',
					price: '',
					freesecond:'',
					src:'',
					menuid:'',
					is_sk:0
				},
				showPicker: false,
				datetime: '',
				type: 'datetime',
				value: '',
				defaultProps1:{"label":"name","value":"id","children":"children"},
				visible:false,
				treeData:[],
				items: [
					{
						value: '1',
						name: '支持'
					},
					{
						value: '0',
						name: '不支持'
					}
				],
				current:1,
				is_sk:false,
				uploadtext:''
			};
		},
		onLoad() {
			this.get_fltree()
		},
		onShow() {
			checkUserinfo()
			let userinfo=uni.getStorageSync('userinfo')
			this.userinfo = userinfo.userdata
			this.checkTinfo(this.userinfo.id)
		},
		onShareAppMessage(res) {
			let path = getCurrentPages()
			let path_share = path[0].$page.fullPath
			let path_title = path[0].data.title
			let userinfo = uni.getStorageSync('userinfo')
			let base_set = uni.getStorageSync('base_set')
			if(userinfo.uid=='' || !userinfo.uid){
				uni.navigateTo({
					url:'../login/login'
				})
				return {
					title: '请先登录后再分享给好友',
					path: ''
				}
			}else{
				if (res.from === 'button') {
					
				}
				return {
					title: base_set.title,
					path: `${path_share}?pid=${userinfo.uid}`
				}
			}
		},
		methods: {
			get_fltree(){
				const BASE_URL = uni.BASE_URL
				uni.request({
					url: BASE_URL+'index/courses/menu_select_json',
					method:'POST',
					data:{	
					},
					success:(res) =>{
						console.log(res.data);
						this.treeData=res.data.data
					},
					fail:(res)=> {
						console.log(res.data);
					}
				});
			},
			selected_menu (e) {
				console.log(e)
				this.applyForm.menuid = e.newVal
			},
			openLevel() {
				this.visible=true;
			},
			onCancel(){
				this.visible=false;
			},
			onConfirm(e) {
				// e 确认后选中的数据
				console.log(e)
				this.menuname=e.result;
				this.applyForm.menuid=e.value.toString();
			},
			radioChange (evt) {
				
				for (let i = 0; i < this.items.length; i++) {
					if (this.items[i].value === evt.detail.value) {
						this.applyForm.is_sk = evt.detail.value
						if(evt.detail.value==1){
							this.is_sk = true;
						}else{
							this.is_sk = false;
						}
						this.current = i;
						break;
					}
				}
			},
			DatePicker(type){//显示
				this.type = type;
				this.showPicker = true;
				this.value = this[type];
			},
			ed(e) {//选择
				this.showPicker = false;
				if(e) {
					this[this.type] = e.value; 
					this.applyForm.zbtime=e.value;
					//选择的值
					console.log('value => '+ e.value);
					//原始的Date对象
					console.log('date => ' + e.date);
				}
			},
			checkTinfo(uid){
				const BASE_URL = uni.BASE_URL
				uni.request({
					url: BASE_URL+'index/teacher/tinfo',
					method:'POST',
					data:{
						uid:uid,
					},
					success:(res) =>{
						console.log(res.data);
						if(res.data.code==0){
							this.tinfo=res.data.data
							if(res.data.data.is_verify==0){
								this.is_verify=true
							}else{
								this.is_verify=false
							}
						}else{
							setTimeout(()=>{
								uni.navigateTo({
									url:'../recruit/recruit'
								})
							},1500)
						}
					},
					fail:(res)=> {
						console.log(res.data);
					}
				});
			},
			upLoadVideo() {
				uni.chooseVideo({
					count: 1,
					sourceType: ['camera', 'album'],
					success: (res)=> {
						console.log(res)
						
						this.tempFilePath = res.tempFilePath;
						if(this.tempFilePath !=''){
							this.uploadtext = '上传中...'
							uni.showLoading({
							    title: '上传中'
							})
							let BASE_URL = uni.BASE_URL
							uni.uploadFile({
								url: BASE_URL+'index/upload/upload', //仅为示例，非真实的接口地址
								filePath: this.tempFilePath,
								name: 'file',
								// header:{"Content-Type": "multipart/form-data"},
								success: (res1) => {
									let data=res1.data
									console.log(data)
									this.uploadtext = '√上传成功'
									this.applyForm.src=data
									uni.hideLoading()
								}
							})
						}
					}
				})
			},
			submit () {
				if(this.applyForm.menuid == '') {
					uni.showToast({
						title: '请选择目录',
						duration: 2000,
						icon:'none'
					});
					return false;
				}
				if(this.applyForm.coursename == '') {
					uni.showToast({
						title: '课时名称不能为空',
						duration: 2000,
						icon:'none'
					});
					return false;
				}
				if(this.applyForm.src == '') {
					uni.showToast({
						title: '请上传课程',
						duration: 2000,
						icon:'none'
					});
					return false;
				}
				this.applyForm.tid = this.tinfo.id
				this.applyForm.media = 'video'
				var applyForm = this.applyForm
				console.log(applyForm)
				const BASE_URL = uni.BASE_URL
				uni.request({
					url: BASE_URL+'index/courses/add_course',
					method:'POST',
					data:applyForm,
					success:(res) =>{
						console.log(res.data)
						if(res.data.code == 0){
							uni.showToast({
								title:'添加成功'
							})
						}else{
							uni.showToast({
								title:'添加失败',
								icon:'none'
							})
						}
					},
					fail:(res)=> {
						console.log(res.data);
					}
				});
			},
		}
	}
</script>

<style lang="less" scoped>
.radio_check{
	display: flex;
	padding: 0 30upx;
	view{
		font-size: 28rpx;
		margin-right: 20upx;
	}
}
.beijing {
	image {
		width: 750upx;
		height: 350upx;
	}
	.info {
		display: flex;
		flex-direction: column;
		align-items: center;
		position: absolute;
		top: 55upx;
		left: 300upx;
		image {
			width: 150upx;
			height: 150upx;
			border-radius: 50%;
		}
		text {
			font-size: 34upx;
			color: #fff;
			margin-top: 20upx;
		}
	}
}

form {
	.setliveparam{
		margin: 20upx;
	}
	slider{
		padding: 0 15rpx;
	}
	.name, .phone {
		width: 690upx;
		height: 80upx;
		border: 2upx solid #c0c4cc;
		border-radius: 10upx;
		margin: 20upx 30upx 0;
		padding-left: 20upx;
		box-sizing: border-box;
	}
	.file {
		padding: 0 15upx;
		padding-bottom: 150upx;
		image {
			width: 150upx;
			height: 150upx;
			margin: 30upx 0 0 30upx;
			border: 2upx dotted #eee;
			border-radius: 10upx;
			box-shadow: 5upx 5upx 5upx 5upx #ddd;
		}
		text {
			font-size: 30upx;
			color: #333;
			margin-left: 20upx;
		}
	}
	.code {
		width: 690upx;
		height: 80upx;
		// background-color: orange;
		margin: 20upx 30upx 0;
		box-sizing: border-box;
		display: flex;
		position: relative;
		.shuxian {
			position: absolute;
			top: 16upx;
			right: 200upx;
			color: #ddd;
		}
		input {
			width: 490upx;
			height: 80upx;
			border: 2upx solid #333;
			border-right: 0;
			border-radius: 10upx 0 0 10upx;
			padding-left: 20upx;
			box-sizing: border-box;
		}
		.sendcode {
			width: 200upx;
			height: 80upx;
			text-align: center;
			line-height: 76upx;
			border: 2upx solid #333;
			border-left: 0;
			border-radius: 0 10upx 10upx 0;
			font-size: 30upx;
			color: #333;
			// padding: 0;
			box-sizing: border-box;
			background-color: #f5f5f5;
		}
	}
	.submit {
		width: 100%;
		height: 120upx;
		background-color: #fff;
		display: flex;
		justify-content: center;
		align-items: center;
		position: fixed;
		left: 0;
		bottom: 0;
		button {
			width: 690upx;
			height: 80upx;
			background-color: #4b89ff;
			border-radius: 80upx;
			color: #fff;
			line-height: 80upx;
		}
	}
}



</style>